#ifndef FL_NTCSTG_H
#define FL_NTCSTG_H

#include "Flag.h"
#include <string>

#include <QtGui> // SERIALIZZAZIONE
#include "filebased.h"

using namespace std;

class fl_NtcStg :
        virtual public Flag,
        virtual public FileBased
{
public:

    fl_NtcStg ( void );
    fl_NtcStg ( const fl_NtcStg& fl );
    fl_NtcStg ( const int& tp_stg );
    fl_NtcStg& operator = ( const fl_NtcStg& fl );

    void	       setFlag ( const int& s );
    bool	       setFlag ( const string& str );
    string      getFlagStr ( void ) const;
    string  getFlagDescription ( ExaTextFormat format = EXA_TEXT_FORMAT_HTML ) const;

    enum	Stg {
                NONE = 0,
                   A = 1,
                   B = 2,
                   C = 3,
                   D = 4,
                   E = 5
                };

    // Overridding for [FileBased]
    virtual ExaFileErr fileSave (const string& file_name) const;
    virtual ExaFileErr fileOpen (const string& file_name);
    virtual ExaFileObj  fileObj ( void ) const;

private:
    static ExaFileObj m_file_obj;
};

Q_DECLARE_METATYPE(fl_NtcStg) // SERIALIZZAZIONE

#endif // FL_NTCSTG_H
